[INFO] fetching crate guion 0.4.0...
[INFO] building guion-0.4.0 against master#881c1ac408d93bb7adaa3a51dabab9266e82eee8 for issue-85264
[INFO] extracting crate guion 0.4.0 into /workspace/builds/worker-6/source
[INFO] validating manifest of crates.io crate guion 0.4.0 on toolchain 881c1ac408d93bb7adaa3a51dabab9266e82eee8
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate guion 0.4.0
[INFO] finished tweaking crates.io crate guion 0.4.0
[INFO] tweaked toml for crates.io crate guion 0.4.0 written to /workspace/builds/worker-6/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded qwutils v0.3.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 08efeac8b82b6f26b02bcce4da02d0a6b5404f1b3810105a0a64bba77ccf00da
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "08efeac8b82b6f26b02bcce4da02d0a6b5404f1b3810105a0a64bba77ccf00da", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "08efeac8b82b6f26b02bcce4da02d0a6b5404f1b3810105a0a64bba77ccf00da", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "08efeac8b82b6f26b02bcce4da02d0a6b5404f1b3810105a0a64bba77ccf00da", kill_on_drop: false }`
[INFO] [stdout] 08efeac8b82b6f26b02bcce4da02d0a6b5404f1b3810105a0a64bba77ccf00da
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 02b84b5a346eb254c6015516c7de4c751fa8cd8f64a888350aad71918f429bfa
[INFO] running `Command { std: "docker" "start" "-a" "02b84b5a346eb254c6015516c7de4c751fa8cd8f64a888350aad71918f429bfa", kill_on_drop: false }`
[INFO] [stderr]    Compiling boolinator v2.4.0
[INFO] [stderr]    Compiling qwutils v0.3.1
[INFO] [stderr]    Compiling guion v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/widget/ext.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/layout/size.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/state/handler.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/widgets/area/imp.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::standard::*`
[INFO] [stdout]   --> src/lib.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) use path::standard::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]   --> src/id/standard.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<E> SubPath<E> for StdID where E: Env, E::WidgetID: Into<Self> + From<Self> {
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]   --> src/path/standard.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 |     S: SubPath<E> + From<E::WidgetID>+Into<E::WidgetID> + Debug + Send+Sync + 'static,
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:144:44
[INFO] [stdout]     |
[INFO] [stdout] 144 | impl<E,S> SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:154:60
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl<E,S> RefClonable for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:161:66
[INFO] [stdout]     |
[INFO] [stdout] 161 | unsafe impl<E,S> Statize<E> for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/path/standard.rs:161:18
[INFO] [stdout]     |
[INFO] [stdout] 161 | unsafe impl<E,S> Statize<E> for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]   --> src/path/standard.rs:71:49
[INFO] [stdout]    |
[INFO] [stdout] 71 |         self.v.get(self.v.len()-1).cloned().map(SubPath::into_id)
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::from_id`
[INFO] [stdout]    --> src/path/standard.rs:132:31
[INFO] [stdout]     |
[INFO] [stdout] 132 |         self.clone().attached(SubPath::from_id(child_id))
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/validation/mod.rs:21:16
[INFO] [stdout]    |
[INFO] [stdout] 21 | unsafe impl<E> Statize<E> for dyn Validation<E> where E: 'static {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/validation/mod.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | unsafe impl<E> Statize<E> for dyn ValidationMut<E> where E: 'static {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/widgets/util/caption.rs:140:16
[INFO] [stdout]     |
[INFO] [stdout] 140 | unsafe impl<E> Statize<E> for dyn Caption<E> where E: 'static {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/widgets/util/caption.rs:143:16
[INFO] [stdout]     |
[INFO] [stdout] 143 | unsafe impl<E> Statize<E> for dyn CaptionMut<E> where E: 'static {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/widgets/util/state.rs:69:18
[INFO] [stdout]    |
[INFO] [stdout] 69 | unsafe impl<T,E> Statize<E> for dyn AtomState<E,T> where T: 'static, E: Env {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/widgets/util/state.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 | unsafe impl<T,E> Statize<E> for dyn AtomStateMut<E,T> where T: 'static, E: Env {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::in_parent_path`
[INFO] [stdout]   --> src/widget/mod.rs:67:55
[INFO] [stdout]    |
[INFO] [stdout] 67 |             .map(#[inline] |i| self.child(i).unwrap().in_parent_path(own_path.refc()) )
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::resolved_by_path`
[INFO] [stdout]    --> src/widget/mod.rs:108:53
[INFO] [stdout]     |
[INFO] [stdout] 108 |             if let Some(r) = self.child(c).unwrap().resolved_by_path(sub_path) {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::resolved_by_path`
[INFO] [stdout]    --> src/widget/mod.rs:402:53
[INFO] [stdout]     |
[INFO] [stdout] 402 |             if let Some(r) = self.child(c).unwrap().resolved_by_path(sub_path) {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::root::Widgets::trace_bounds`
[INFO] [stdout]    --> src/widget/link/mod.rs:158:26
[INFO] [stdout]     |
[INFO] [stdout] 158 |         self.widget.stor.trace_bounds(self.ctx,self.widget.path.refc(),root_bounds,e,force).unwrap()
[INFO] [stdout]     |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::in_parent_path`
[INFO] [stdout]    --> src/widget/link/mod.rs:203:21
[INFO] [stdout]     |
[INFO] [stdout] 203 |             path: w.in_parent_path(path.refc()).into(),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::in_parent_path`
[INFO] [stdout]    --> src/widget/link/mod.rs:247:23
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let path = rw.in_parent_path(self.path());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::root::Widgets::trace_bounds`
[INFO] [stdout]   --> src/widget/resolved.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |         self.stor.trace_bounds(c,self.path.refc(),root_bounds,e,force).unwrap()
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]   --> src/widget/resolvable.rs:45:34
[INFO] [stdout]    |
[INFO] [stdout] 45 |             Self::Widget(w) => w.resolved_by_path(p),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::in_parent_path`
[INFO] [stdout]   --> src/widget/resolvable.rs:54:34
[INFO] [stdout]    |
[INFO] [stdout] 54 |             Self::Widget(w) => w.in_parent_path(parent),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]    --> src/widget/resolvable.rs:123:34
[INFO] [stdout]     |
[INFO] [stdout] 123 |             Self::Widget(w) => w.resolved_by_path(p),
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         Any::downcast_ref::<Self>(o)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         Any::is::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         Any::downcast_ref::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         Any::downcast_mut::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/path/sub.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         Any::downcast_ref::<Self>(o)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::resolve_to_same_widget`
[INFO] [stdout]   --> src/path/standard.rs:62:29
[INFO] [stdout]    |
[INFO] [stdout] 62 |             .find(|(i,v)| v.resolve_to_same_widget(ptip) )
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::resolve_to_same_widget`
[INFO] [stdout]   --> src/path/standard.rs:81:22
[INFO] [stdout]    |
[INFO] [stdout] 81 |             return s.resolve_to_same_widget(o);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]    --> src/path/standard.rs:111:42
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sub_path_dest_id = s.clone().into_id(); //TODO deprecated old PathSub thing
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]    --> src/path/standard.rs:127:58
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 Self::resolves_thru_child_id(tip.clone().into_id(),sub_path)
[INFO] [stdout]     |                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]   --> src/event/filter.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |             dest.widget.resolved_by_path(&self.filter_path)
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/event/standard/dyn_evt.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         Any::downcast_ref(self.event._as_any())
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::ident::WidgetIdent::<E>::from_path`: this resolves the widget
[INFO] [stdout]   --> src/handler/standard/mod.rs:44:44
[INFO] [stdout]    |
[INFO] [stdout] 44 |         root.as_mut().s.kbd.focused = Some(WidgetIdent::from_path(p.refc(),root.widget.stor)?);
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]   --> src/handler/standard/imp.rs:63:37
[INFO] [stdout]    |
[INFO] [stdout] 63 |                         passed |= l._event_root(&e.with_event(Event::from(RootEvent::KbdPress{key})));
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::ident::WidgetIdent::<E>::from_path`: this resolves the widget
[INFO] [stdout]    --> src/handler/standard/imp.rs:113:65
[INFO] [stdout]     |
[INFO] [stdout] 113 | ...                   l.as_mut().s.kbd.focused = Some(WidgetIdent::from_path(path,l.widget.stor).expect("TODO"));
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:187:33
[INFO] [stdout]     |
[INFO] [stdout] 187 |                     passed |= l._event_root(&e.with_event(Event::from(MouseMove{pos})));
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:208:33
[INFO] [stdout]     |
[INFO] [stdout] 208 |                     passed |= l._event_root(&e.with_event(Event::from(WindowMove{pos,size})))
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:211:33
[INFO] [stdout]     |
[INFO] [stdout] 211 |                     passed |= l._event_root(&e.with_event(Event::from(WindowResize{size})))
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/pane/widget.rs:80:15
[INFO] [stdout]    |
[INFO] [stdout] 80 |             r.render_widget(l);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/button/widget.rs:50:14
[INFO] [stdout]    |
[INFO] [stdout] 50 |             .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/widgets/button/widget.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |         todo!();
[INFO] [stdout]    |         -------- any code following this expression is unreachable
[INFO] [stdout] 92 |         Ok(vec![]) //TODO or should None be returned for child-free widgets?? check this
[INFO] [stdout]    |         ^^^^^^^^^^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::widgets::RenderStdWidgets::render_text`: avoid this because stuff is not cached
[INFO] [stdout]   --> src/widgets/label/widget.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 |             .render_text(self.text.caption().as_ref(),self.align,l.ctx);
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/checkbox/widget.rs:65:18
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/widgets/checkbox/widget.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |         todo!();
[INFO] [stdout]     |         -------- any code following this expression is unreachable
[INFO] [stdout] 110 |         Ok(vec![]) //TODO or should None be returned for child-free widgets?? check this
[INFO] [stdout]     |         ^^^^^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:41:15
[INFO] [stdout]    |
[INFO] [stdout] 41 |             r.render_widget(left);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 |             r.render_widget(right);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/area/widget.rs:36:14
[INFO] [stdout]    |
[INFO] [stdout] 36 |             .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `util::bounded_widget`
[INFO] [stdout]   --> src/lib.rs:54:16
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) use util::bounded_widget::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/path/standard.rs:62:21
[INFO] [stdout]    |
[INFO] [stdout] 62 |             .find(|(i,v)| v.resolve_to_same_widget(ptip) )
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/render/link.rs:42:60
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn simple(r: &'a mut ERenderer<E>, dim: (u32,u32), c: &E::Context) -> Self {
[INFO] [stdout]    |                                                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `force`
[INFO] [stdout]    --> src/widgets/pane/widget.rs:115:80
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn child_bounds_impl(&self, mut l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> where
[INFO] [stdout]     |                                                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_force`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/button/widget.rs:90:52
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/label/widget.rs:45:52
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/pbar/widget.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let e = e.and(&self.style);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/pbar/widget.rs:38:52
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/checkbox/widget.rs:108:52
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mm`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:63:25
[INFO] [stdout]    |
[INFO] [stdout] 63 |             if let Some(mm) = e.event.is_mouse_move() {
[INFO] [stdout]    |                         ^^ help: if this is intentional, prefix it with an underscore: `_mm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/splitpane/widget.rs:124:52
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn child_bounds(&self, l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `force`
[INFO] [stdout]    --> src/widgets/splitpane/widget.rs:124:67
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn child_bounds(&self, l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_force`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/textbox/widget.rs:191:13
[INFO] [stdout]     |
[INFO] [stdout] 191 |         let e = e.and(&self.style);
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/textbox/widget.rs:204:52
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `skip_unselect`
[INFO] [stdout]   --> src/widgets/textbox/imp.rs:79:41
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn move_cursor_y(&mut self, o: i32, skip_unselect: bool, ctx: &mut E::Context, b: &Bounds) {
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_skip_unselect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ee`
[INFO] [stdout]    --> src/widgets/textbox/imp.rs:117:21
[INFO] [stdout]     |
[INFO] [stdout] 117 |         if let Some(ee) = mouse_down {
[INFO] [stdout]     |                     ^^ help: if this is intentional, prefix it with an underscore: `_ee`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/area/widget.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let e = e.and(&self.style);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/area/widget.rs:106:52
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `prev_selector`
[INFO] [stdout]   --> src/render/link.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     prev_selector: Option<&'a ESSelector<E>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `c`
[INFO] [stdout]   --> src/widgets/util/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     c: Option<ESize<E>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `with`
[INFO] [stdout]   --> src/widgets/util/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn with(&self, mut l: Link<E>, f: fn(Link<E>) -> ESize<E>) -> ESize<E> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `invalidate`
[INFO] [stdout]   --> src/widgets/util/mod.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn invalidate(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/widgets/util/mod.rs:31:29
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type LocalGlyphCache<E: Env> = Option<(Arc<ESGlyphs<E>>,Arc<dyn Any>)>;
[INFO] [stdout]    |                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type LocalGlyphCache<E> = Option<(Arc<ESGlyphs<E>>,Arc<dyn Any>)>;
[INFO] [stdout]    |                          --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 78 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 5.86s
[INFO] running `Command { std: "docker" "inspect" "02b84b5a346eb254c6015516c7de4c751fa8cd8f64a888350aad71918f429bfa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "02b84b5a346eb254c6015516c7de4c751fa8cd8f64a888350aad71918f429bfa", kill_on_drop: false }`
[INFO] [stdout] 02b84b5a346eb254c6015516c7de4c751fa8cd8f64a888350aad71918f429bfa
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+881c1ac408d93bb7adaa3a51dabab9266e82eee8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ef9a7daaff70c79d2484a06bf2a4c4501c978ddcc274af99fb10096eac45827b
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "ef9a7daaff70c79d2484a06bf2a4c4501c978ddcc274af99fb10096eac45827b", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/widget/ext.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/layout/size.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/state/handler.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/widgets/area/imp.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::standard::*`
[INFO] [stdout]   --> src/lib.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) use path::standard::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]   --> src/id/standard.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<E> SubPath<E> for StdID where E: Env, E::WidgetID: Into<Self> + From<Self> {
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]   --> src/path/standard.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 |     S: SubPath<E> + From<E::WidgetID>+Into<E::WidgetID> + Debug + Send+Sync + 'static,
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:144:44
[INFO] [stdout]     |
[INFO] [stdout] 144 | impl<E,S> SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:154:60
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl<E,S> RefClonable for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:161:66
[INFO] [stdout]     |
[INFO] [stdout] 161 | unsafe impl<E,S> Statize<E> for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/path/standard.rs:161:18
[INFO] [stdout]     |
[INFO] [stdout] 161 | unsafe impl<E,S> Statize<E> for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]   --> src/path/standard.rs:71:49
[INFO] [stdout]    |
[INFO] [stdout] 71 |         self.v.get(self.v.len()-1).cloned().map(SubPath::into_id)
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::from_id`
[INFO] [stdout]    --> src/path/standard.rs:132:31
[INFO] [stdout]     |
[INFO] [stdout] 132 |         self.clone().attached(SubPath::from_id(child_id))
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/validation/mod.rs:21:16
[INFO] [stdout]    |
[INFO] [stdout] 21 | unsafe impl<E> Statize<E> for dyn Validation<E> where E: 'static {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/validation/mod.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | unsafe impl<E> Statize<E> for dyn ValidationMut<E> where E: 'static {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/widgets/util/caption.rs:140:16
[INFO] [stdout]     |
[INFO] [stdout] 140 | unsafe impl<E> Statize<E> for dyn Caption<E> where E: 'static {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/widgets/util/caption.rs:143:16
[INFO] [stdout]     |
[INFO] [stdout] 143 | unsafe impl<E> Statize<E> for dyn CaptionMut<E> where E: 'static {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/widgets/util/state.rs:69:18
[INFO] [stdout]    |
[INFO] [stdout] 69 | unsafe impl<T,E> Statize<E> for dyn AtomState<E,T> where T: 'static, E: Env {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/widgets/util/state.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 | unsafe impl<T,E> Statize<E> for dyn AtomStateMut<E,T> where T: 'static, E: Env {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::in_parent_path`
[INFO] [stdout]   --> src/widget/mod.rs:67:55
[INFO] [stdout]    |
[INFO] [stdout] 67 |             .map(#[inline] |i| self.child(i).unwrap().in_parent_path(own_path.refc()) )
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::resolved_by_path`
[INFO] [stdout]    --> src/widget/mod.rs:108:53
[INFO] [stdout]     |
[INFO] [stdout] 108 |             if let Some(r) = self.child(c).unwrap().resolved_by_path(sub_path) {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::resolved_by_path`
[INFO] [stdout]    --> src/widget/mod.rs:402:53
[INFO] [stdout]     |
[INFO] [stdout] 402 |             if let Some(r) = self.child(c).unwrap().resolved_by_path(sub_path) {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::root::Widgets::trace_bounds`
[INFO] [stdout]    --> src/widget/link/mod.rs:158:26
[INFO] [stdout]     |
[INFO] [stdout] 158 |         self.widget.stor.trace_bounds(self.ctx,self.widget.path.refc(),root_bounds,e,force).unwrap()
[INFO] [stdout]     |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::in_parent_path`
[INFO] [stdout]    --> src/widget/link/mod.rs:203:21
[INFO] [stdout]     |
[INFO] [stdout] 203 |             path: w.in_parent_path(path.refc()).into(),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::in_parent_path`
[INFO] [stdout]    --> src/widget/link/mod.rs:247:23
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let path = rw.in_parent_path(self.path());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::root::Widgets::trace_bounds`
[INFO] [stdout]   --> src/widget/resolved.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |         self.stor.trace_bounds(c,self.path.refc(),root_bounds,e,force).unwrap()
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]   --> src/widget/resolvable.rs:45:34
[INFO] [stdout]    |
[INFO] [stdout] 45 |             Self::Widget(w) => w.resolved_by_path(p),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::in_parent_path`
[INFO] [stdout]   --> src/widget/resolvable.rs:54:34
[INFO] [stdout]    |
[INFO] [stdout] 54 |             Self::Widget(w) => w.in_parent_path(parent),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]    --> src/widget/resolvable.rs:123:34
[INFO] [stdout]     |
[INFO] [stdout] 123 |             Self::Widget(w) => w.resolved_by_path(p),
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         Any::downcast_ref::<Self>(o)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         Any::is::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         Any::downcast_ref::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         Any::downcast_mut::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/path/sub.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         Any::downcast_ref::<Self>(o)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::resolve_to_same_widget`
[INFO] [stdout]   --> src/path/standard.rs:62:29
[INFO] [stdout]    |
[INFO] [stdout] 62 |             .find(|(i,v)| v.resolve_to_same_widget(ptip) )
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::resolve_to_same_widget`
[INFO] [stdout]   --> src/path/standard.rs:81:22
[INFO] [stdout]    |
[INFO] [stdout] 81 |             return s.resolve_to_same_widget(o);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]    --> src/path/standard.rs:111:42
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sub_path_dest_id = s.clone().into_id(); //TODO deprecated old PathSub thing
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]    --> src/path/standard.rs:127:58
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 Self::resolves_thru_child_id(tip.clone().into_id(),sub_path)
[INFO] [stdout]     |                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]   --> src/event/filter.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |             dest.widget.resolved_by_path(&self.filter_path)
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/event/standard/dyn_evt.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         Any::downcast_ref(self.event._as_any())
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::ident::WidgetIdent::<E>::from_path`: this resolves the widget
[INFO] [stdout]   --> src/handler/standard/mod.rs:44:44
[INFO] [stdout]    |
[INFO] [stdout] 44 |         root.as_mut().s.kbd.focused = Some(WidgetIdent::from_path(p.refc(),root.widget.stor)?);
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]   --> src/handler/standard/imp.rs:63:37
[INFO] [stdout]    |
[INFO] [stdout] 63 |                         passed |= l._event_root(&e.with_event(Event::from(RootEvent::KbdPress{key})));
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::ident::WidgetIdent::<E>::from_path`: this resolves the widget
[INFO] [stdout]    --> src/handler/standard/imp.rs:113:65
[INFO] [stdout]     |
[INFO] [stdout] 113 | ...                   l.as_mut().s.kbd.focused = Some(WidgetIdent::from_path(path,l.widget.stor).expect("TODO"));
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:187:33
[INFO] [stdout]     |
[INFO] [stdout] 187 |                     passed |= l._event_root(&e.with_event(Event::from(MouseMove{pos})));
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:208:33
[INFO] [stdout]     |
[INFO] [stdout] 208 |                     passed |= l._event_root(&e.with_event(Event::from(WindowMove{pos,size})))
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:211:33
[INFO] [stdout]     |
[INFO] [stdout] 211 |                     passed |= l._event_root(&e.with_event(Event::from(WindowResize{size})))
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/pane/widget.rs:80:15
[INFO] [stdout]    |
[INFO] [stdout] 80 |             r.render_widget(l);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/button/widget.rs:50:14
[INFO] [stdout]    |
[INFO] [stdout] 50 |             .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/widgets/button/widget.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |         todo!();
[INFO] [stdout]    |         -------- any code following this expression is unreachable
[INFO] [stdout] 92 |         Ok(vec![]) //TODO or should None be returned for child-free widgets?? check this
[INFO] [stdout]    |         ^^^^^^^^^^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::widgets::RenderStdWidgets::render_text`: avoid this because stuff is not cached
[INFO] [stdout]   --> src/widgets/label/widget.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 |             .render_text(self.text.caption().as_ref(),self.align,l.ctx);
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/checkbox/widget.rs:65:18
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/widgets/checkbox/widget.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |         todo!();
[INFO] [stdout]     |         -------- any code following this expression is unreachable
[INFO] [stdout] 110 |         Ok(vec![]) //TODO or should None be returned for child-free widgets?? check this
[INFO] [stdout]     |         ^^^^^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:41:15
[INFO] [stdout]    |
[INFO] [stdout] 41 |             r.render_widget(left);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 |             r.render_widget(right);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/area/widget.rs:36:14
[INFO] [stdout]    |
[INFO] [stdout] 36 |             .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `util::bounded_widget`
[INFO] [stdout]   --> src/lib.rs:54:16
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) use util::bounded_widget::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/path/standard.rs:62:21
[INFO] [stdout]    |
[INFO] [stdout] 62 |             .find(|(i,v)| v.resolve_to_same_widget(ptip) )
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/render/link.rs:42:60
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn simple(r: &'a mut ERenderer<E>, dim: (u32,u32), c: &E::Context) -> Self {
[INFO] [stdout]    |                                                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `force`
[INFO] [stdout]    --> src/widgets/pane/widget.rs:115:80
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn child_bounds_impl(&self, mut l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> where
[INFO] [stdout]     |                                                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_force`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/button/widget.rs:90:52
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/label/widget.rs:45:52
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/pbar/widget.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let e = e.and(&self.style);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/pbar/widget.rs:38:52
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/checkbox/widget.rs:108:52
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mm`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:63:25
[INFO] [stdout]    |
[INFO] [stdout] 63 |             if let Some(mm) = e.event.is_mouse_move() {
[INFO] [stdout]    |                         ^^ help: if this is intentional, prefix it with an underscore: `_mm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/splitpane/widget.rs:124:52
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn child_bounds(&self, l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `force`
[INFO] [stdout]    --> src/widgets/splitpane/widget.rs:124:67
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn child_bounds(&self, l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_force`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/textbox/widget.rs:191:13
[INFO] [stdout]     |
[INFO] [stdout] 191 |         let e = e.and(&self.style);
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/textbox/widget.rs:204:52
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `skip_unselect`
[INFO] [stdout]   --> src/widgets/textbox/imp.rs:79:41
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn move_cursor_y(&mut self, o: i32, skip_unselect: bool, ctx: &mut E::Context, b: &Bounds) {
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_skip_unselect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ee`
[INFO] [stdout]    --> src/widgets/textbox/imp.rs:117:21
[INFO] [stdout]     |
[INFO] [stdout] 117 |         if let Some(ee) = mouse_down {
[INFO] [stdout]     |                     ^^ help: if this is intentional, prefix it with an underscore: `_ee`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/area/widget.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let e = e.and(&self.style);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/area/widget.rs:106:52
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `prev_selector`
[INFO] [stdout]   --> src/render/link.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     prev_selector: Option<&'a ESSelector<E>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `c`
[INFO] [stdout]   --> src/widgets/util/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     c: Option<ESize<E>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `with`
[INFO] [stdout]   --> src/widgets/util/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn with(&self, mut l: Link<E>, f: fn(Link<E>) -> ESize<E>) -> ESize<E> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `invalidate`
[INFO] [stdout]   --> src/widgets/util/mod.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn invalidate(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling guion v0.4.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/widgets/util/mod.rs:31:29
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type LocalGlyphCache<E: Env> = Option<(Arc<ESGlyphs<E>>,Arc<dyn Any>)>;
[INFO] [stdout]    |                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type LocalGlyphCache<E> = Option<(Arc<ESGlyphs<E>>,Arc<dyn Any>)>;
[INFO] [stdout]    |                          --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 78 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/widget/ext.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/layout/size.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/state/handler.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]  --> src/widgets/area/imp.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use super::*;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `path::standard::*`
[INFO] [stdout]   --> src/lib.rs:39:16
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub(crate) use path::standard::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]   --> src/id/standard.rs:50:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | impl<E> SubPath<E> for StdID where E: Env, E::WidgetID: Into<Self> + From<Self> {
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]   --> src/path/standard.rs:44:8
[INFO] [stdout]    |
[INFO] [stdout] 44 |     S: SubPath<E> + From<E::WidgetID>+Into<E::WidgetID> + Debug + Send+Sync + 'static,
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:144:44
[INFO] [stdout]     |
[INFO] [stdout] 144 | impl<E,S> SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:154:60
[INFO] [stdout]     |
[INFO] [stdout] 154 | impl<E,S> RefClonable for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `path::sub::SubPath`
[INFO] [stdout]    --> src/path/standard.rs:161:66
[INFO] [stdout]     |
[INFO] [stdout] 161 | unsafe impl<E,S> Statize<E> for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/path/standard.rs:161:18
[INFO] [stdout]     |
[INFO] [stdout] 161 | unsafe impl<E,S> Statize<E> for SimplePath<E,S> where E: Env, S: SubPath<E> + Send+Sync + 'static {
[INFO] [stdout]     |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]   --> src/path/standard.rs:71:49
[INFO] [stdout]    |
[INFO] [stdout] 71 |         self.v.get(self.v.len()-1).cloned().map(SubPath::into_id)
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::from_id`
[INFO] [stdout]    --> src/path/standard.rs:132:31
[INFO] [stdout]     |
[INFO] [stdout] 132 |         self.clone().attached(SubPath::from_id(child_id))
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/validation/mod.rs:21:16
[INFO] [stdout]    |
[INFO] [stdout] 21 | unsafe impl<E> Statize<E> for dyn Validation<E> where E: 'static {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/validation/mod.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 | unsafe impl<E> Statize<E> for dyn ValidationMut<E> where E: 'static {
[INFO] [stdout]    |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/widgets/util/caption.rs:140:16
[INFO] [stdout]     |
[INFO] [stdout] 140 | unsafe impl<E> Statize<E> for dyn Caption<E> where E: 'static {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]    --> src/widgets/util/caption.rs:143:16
[INFO] [stdout]     |
[INFO] [stdout] 143 | unsafe impl<E> Statize<E> for dyn CaptionMut<E> where E: 'static {
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/widgets/util/state.rs:69:18
[INFO] [stdout]    |
[INFO] [stdout] 69 | unsafe impl<T,E> Statize<E> for dyn AtomState<E,T> where T: 'static, E: Env {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated trait `widget::cast::Statize`
[INFO] [stdout]   --> src/widgets/util/state.rs:72:18
[INFO] [stdout]    |
[INFO] [stdout] 72 | unsafe impl<T,E> Statize<E> for dyn AtomStateMut<E,T> where T: 'static, E: Env {
[INFO] [stdout]    |                  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::in_parent_path`
[INFO] [stdout]   --> src/widget/mod.rs:67:55
[INFO] [stdout]    |
[INFO] [stdout] 67 |             .map(#[inline] |i| self.child(i).unwrap().in_parent_path(own_path.refc()) )
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::resolved_by_path`
[INFO] [stdout]    --> src/widget/mod.rs:108:53
[INFO] [stdout]     |
[INFO] [stdout] 108 |             if let Some(r) = self.child(c).unwrap().resolved_by_path(sub_path) {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::resolved_by_path`
[INFO] [stdout]    --> src/widget/mod.rs:402:53
[INFO] [stdout]     |
[INFO] [stdout] 402 |             if let Some(r) = self.child(c).unwrap().resolved_by_path(sub_path) {
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::root::Widgets::trace_bounds`
[INFO] [stdout]    --> src/widget/link/mod.rs:158:26
[INFO] [stdout]     |
[INFO] [stdout] 158 |         self.widget.stor.trace_bounds(self.ctx,self.widget.path.refc(),root_bounds,e,force).unwrap()
[INFO] [stdout]     |                          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::in_parent_path`
[INFO] [stdout]    --> src/widget/link/mod.rs:203:21
[INFO] [stdout]     |
[INFO] [stdout] 203 |             path: w.in_parent_path(path.refc()).into(),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::resolvable::Resolvable::<'w, E>::in_parent_path`
[INFO] [stdout]    --> src/widget/link/mod.rs:247:23
[INFO] [stdout]     |
[INFO] [stdout] 247 |         let path = rw.in_parent_path(self.path());
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::root::Widgets::trace_bounds`
[INFO] [stdout]   --> src/widget/resolved.rs:65:19
[INFO] [stdout]    |
[INFO] [stdout] 65 |         self.stor.trace_bounds(c,self.path.refc(),root_bounds,e,force).unwrap()
[INFO] [stdout]    |                   ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]   --> src/widget/resolvable.rs:45:34
[INFO] [stdout]    |
[INFO] [stdout] 45 |             Self::Widget(w) => w.resolved_by_path(p),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::in_parent_path`
[INFO] [stdout]   --> src/widget/resolvable.rs:54:34
[INFO] [stdout]    |
[INFO] [stdout] 54 |             Self::Widget(w) => w.in_parent_path(parent),
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]    --> src/widget/resolvable.rs:123:34
[INFO] [stdout]     |
[INFO] [stdout] 123 |             Self::Widget(w) => w.resolved_by_path(p),
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/mod.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 14 |         Any::downcast_ref::<Self>(o)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:69:9
[INFO] [stdout]    |
[INFO] [stdout] 69 |         Any::is::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |         Any::downcast_ref::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/id/standard.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |         Any::downcast_mut::<T>(self)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/path/sub.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |         Any::downcast_ref::<Self>(o)
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::resolve_to_same_widget`
[INFO] [stdout]   --> src/path/standard.rs:62:29
[INFO] [stdout]    |
[INFO] [stdout] 62 |             .find(|(i,v)| v.resolve_to_same_widget(ptip) )
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::resolve_to_same_widget`
[INFO] [stdout]   --> src/path/standard.rs:81:22
[INFO] [stdout]    |
[INFO] [stdout] 81 |             return s.resolve_to_same_widget(o);
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]    --> src/path/standard.rs:111:42
[INFO] [stdout]     |
[INFO] [stdout] 111 |             sub_path_dest_id = s.clone().into_id(); //TODO deprecated old PathSub thing
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `path::sub::SubPath::into_id`
[INFO] [stdout]    --> src/path/standard.rs:127:58
[INFO] [stdout]     |
[INFO] [stdout] 127 |                 Self::resolves_thru_child_id(tip.clone().into_id(),sub_path)
[INFO] [stdout]     |                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::Widget::resolved_by_path`
[INFO] [stdout]   --> src/event/filter.rs:21:25
[INFO] [stdout]    |
[INFO] [stdout] 21 |             dest.widget.resolved_by_path(&self.filter_path)
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/event/standard/dyn_evt.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         Any::downcast_ref(self.event._as_any())
[INFO] [stdout]    |         ^^^ help: use `dyn`: `<dyn Any>`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in the 2021 edition!
[INFO] [stdout]    = note: for more information, see issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::ident::WidgetIdent::<E>::from_path`: this resolves the widget
[INFO] [stdout]   --> src/handler/standard/mod.rs:44:44
[INFO] [stdout]    |
[INFO] [stdout] 44 |         root.as_mut().s.kbd.focused = Some(WidgetIdent::from_path(p.refc(),root.widget.stor)?);
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]   --> src/handler/standard/imp.rs:63:37
[INFO] [stdout]    |
[INFO] [stdout] 63 |                         passed |= l._event_root(&e.with_event(Event::from(RootEvent::KbdPress{key})));
[INFO] [stdout]    |                                     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::ident::WidgetIdent::<E>::from_path`: this resolves the widget
[INFO] [stdout]    --> src/handler/standard/imp.rs:113:65
[INFO] [stdout]     |
[INFO] [stdout] 113 | ...                   l.as_mut().s.kbd.focused = Some(WidgetIdent::from_path(path,l.widget.stor).expect("TODO"));
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:187:33
[INFO] [stdout]     |
[INFO] [stdout] 187 |                     passed |= l._event_root(&e.with_event(Event::from(MouseMove{pos})));
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:208:33
[INFO] [stdout]     |
[INFO] [stdout] 208 |                     passed |= l._event_root(&e.with_event(Event::from(WindowMove{pos,size})))
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `widget::link::Link::<'c, E>::_event_root`: Non-root link is panic
[INFO] [stdout]    --> src/handler/standard/imp.rs:211:33
[INFO] [stdout]     |
[INFO] [stdout] 211 |                     passed |= l._event_root(&e.with_event(Event::from(WindowResize{size})))
[INFO] [stdout]     |                                 ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/pane/widget.rs:80:15
[INFO] [stdout]    |
[INFO] [stdout] 80 |             r.render_widget(l);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/button/widget.rs:50:14
[INFO] [stdout]    |
[INFO] [stdout] 50 |             .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]   --> src/widgets/button/widget.rs:92:9
[INFO] [stdout]    |
[INFO] [stdout] 91 |         todo!();
[INFO] [stdout]    |         -------- any code following this expression is unreachable
[INFO] [stdout] 92 |         Ok(vec![]) //TODO or should None be returned for child-free widgets?? check this
[INFO] [stdout]    |         ^^^^^^^^^^ unreachable expression
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::widgets::RenderStdWidgets::render_text`: avoid this because stuff is not cached
[INFO] [stdout]   --> src/widgets/label/widget.rs:25:14
[INFO] [stdout]    |
[INFO] [stdout] 25 |             .render_text(self.text.caption().as_ref(),self.align,l.ctx);
[INFO] [stdout]    |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/checkbox/widget.rs:65:18
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |                  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/widgets/checkbox/widget.rs:110:9
[INFO] [stdout]     |
[INFO] [stdout] 109 |         todo!();
[INFO] [stdout]     |         -------- any code following this expression is unreachable
[INFO] [stdout] 110 |         Ok(vec![]) //TODO or should None be returned for child-free widgets?? check this
[INFO] [stdout]     |         ^^^^^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:41:15
[INFO] [stdout]    |
[INFO] [stdout] 41 |             r.render_widget(left);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:46:15
[INFO] [stdout]    |
[INFO] [stdout] 46 |             r.render_widget(right);
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `render::link::RenderLink::<'a, E>::render_widget`
[INFO] [stdout]   --> src/widgets/area/widget.rs:36:14
[INFO] [stdout]    |
[INFO] [stdout] 36 |             .render_widget(l.for_child(0).unwrap());
[INFO] [stdout]    |              ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `util::bounded_widget`
[INFO] [stdout]   --> src/lib.rs:54:16
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub(crate) use util::bounded_widget::*;
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> src/path/standard.rs:62:21
[INFO] [stdout]    |
[INFO] [stdout] 62 |             .find(|(i,v)| v.resolve_to_same_widget(ptip) )
[INFO] [stdout]    |                     ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `c`
[INFO] [stdout]   --> src/render/link.rs:42:60
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn simple(r: &'a mut ERenderer<E>, dim: (u32,u32), c: &E::Context) -> Self {
[INFO] [stdout]    |                                                            ^ help: if this is intentional, prefix it with an underscore: `_c`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `force`
[INFO] [stdout]    --> src/widgets/pane/widget.rs:115:80
[INFO] [stdout]     |
[INFO] [stdout] 115 |     pub fn child_bounds_impl(&self, mut l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> where
[INFO] [stdout]     |                                                                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_force`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/button/widget.rs:90:52
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/label/widget.rs:45:52
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/pbar/widget.rs:26:13
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let e = e.and(&self.style);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/pbar/widget.rs:38:52
[INFO] [stdout]    |
[INFO] [stdout] 38 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]    |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/checkbox/widget.rs:108:52
[INFO] [stdout]     |
[INFO] [stdout] 108 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mm`
[INFO] [stdout]   --> src/widgets/splitpane/widget.rs:63:25
[INFO] [stdout]    |
[INFO] [stdout] 63 |             if let Some(mm) = e.event.is_mouse_move() {
[INFO] [stdout]    |                         ^^ help: if this is intentional, prefix it with an underscore: `_mm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/splitpane/widget.rs:124:52
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn child_bounds(&self, l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `force`
[INFO] [stdout]    --> src/widgets/splitpane/widget.rs:124:67
[INFO] [stdout]     |
[INFO] [stdout] 124 |     fn child_bounds(&self, l: Link<E>, b: &Bounds, e: &EStyle<E>, force: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_force`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/textbox/widget.rs:191:13
[INFO] [stdout]     |
[INFO] [stdout] 191 |         let e = e.and(&self.style);
[INFO] [stdout]     |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/textbox/widget.rs:204:52
[INFO] [stdout]     |
[INFO] [stdout] 204 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `skip_unselect`
[INFO] [stdout]   --> src/widgets/textbox/imp.rs:79:41
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn move_cursor_y(&mut self, o: i32, skip_unselect: bool, ctx: &mut E::Context, b: &Bounds) {
[INFO] [stdout]    |                                         ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_skip_unselect`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ee`
[INFO] [stdout]    --> src/widgets/textbox/imp.rs:117:21
[INFO] [stdout]     |
[INFO] [stdout] 117 |         if let Some(ee) = mouse_down {
[INFO] [stdout]     |                     ^^ help: if this is intentional, prefix it with an underscore: `_ee`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/widgets/area/widget.rs:93:13
[INFO] [stdout]    |
[INFO] [stdout] 93 |         let e = e.and(&self.style);
[INFO] [stdout]    |             ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/widgets/area/widget.rs:106:52
[INFO] [stdout]     |
[INFO] [stdout] 106 |     fn child_bounds(&self, _: Link<E>, _: &Bounds, e: &EStyle<E>, _: bool) -> Result<Vec<Bounds>,()> {
[INFO] [stdout]     |                                                    ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `prev_selector`
[INFO] [stdout]   --> src/render/link.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 |     prev_selector: Option<&'a ESSelector<E>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field is never read: `c`
[INFO] [stdout]   --> src/widgets/util/mod.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     c: Option<ESize<E>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `with`
[INFO] [stdout]   --> src/widgets/util/mod.rs:17:8
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn with(&self, mut l: Link<E>, f: fn(Link<E>) -> ESize<E>) -> ESize<E> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function is never used: `invalidate`
[INFO] [stdout]   --> src/widgets/util/mod.rs:26:8
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn invalidate(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: bounds on generic parameters are not enforced in type aliases
[INFO] [stdout]   --> src/widgets/util/mod.rs:31:29
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type LocalGlyphCache<E: Env> = Option<(Arc<ESGlyphs<E>>,Arc<dyn Any>)>;
[INFO] [stdout]    |                             ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(type_alias_bounds)]` on by default
[INFO] [stdout] help: the bound will not be checked when the type alias is used, and should be removed
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub type LocalGlyphCache<E> = Option<(Arc<ESGlyphs<E>>,Arc<dyn Any>)>;
[INFO] [stdout]    |                          --
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 78 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 3.93s
[INFO] running `Command { std: "docker" "inspect" "ef9a7daaff70c79d2484a06bf2a4c4501c978ddcc274af99fb10096eac45827b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ef9a7daaff70c79d2484a06bf2a4c4501c978ddcc274af99fb10096eac45827b", kill_on_drop: false }`
[INFO] [stdout] ef9a7daaff70c79d2484a06bf2a4c4501c978ddcc274af99fb10096eac45827b
